// 这是项目发布阶段需要用到的bebel插件
const prodPlugins = [];
// 如果是发布阶段,处于生产环境,就向prodPlugins数组里添加一个插件

if (process.env.NODE_ENV === "production") {
  // 如果是生产环境，则自动清理掉打印的日志，但保留error 与 warn
  prodPlugins.push([
    "transform-remove-console",
    {
      // 不清理的内容
      exclude: ["error", "warn"], // 保留 console.error 与 console.warn
    },
  ]);
}

module.exports = {
  presets: [
    [
      "@babel/preset-env",
      {
        modules: false,
        targets: {
          browsers: ["ie >= 7"],
        },
      },
    ],
    // ["@vue/cli-plugin-babel/preset", { useBuiltIns: "entry", }],
    "@vue/babel-preset-jsx", // 支持jsx语法
  ],
  // 取消将文字转为unicode编码
  generatorOpts: {
    jsescOption: {
      minimal: true,
    },
  },
  plugins: [
    "@babel/plugin-transform-template-literals",
    ...prodPlugins, // 这里...展开运算符，把上面定义的prdPlugins数组里面的每一项展开添加到这个plugins数组里面
  ],
};
